home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-02 / asg53.zip / RASGDEMO.INC < prev    next >
Text File  |  1989-12-03  |  2KB  |  72 lines

  1. TYPE
  2.  Info=RECORD
  3.   Address,
  4.   City  : STRING[20];
  5.   Phone : STRING[14];
  6.   CASE Business : BOOLEAN OF
  7.   False:(First : STRING[15];
  8.          Mid   : CHAR;
  9.          Last  : STRING[15];
  10.          Age   : BYTE);
  11.   True: (Name  : STRING[26];
  12.          Years : WORD;
  13.          PorL  : REAL;
  14.          GorL  : INTEGER);
  15.  END; {variable record}
  16.  
  17. VAR
  18.  CA      : ARRAY[1..5,1..5] OF WORD;
  19.  AddInfo,
  20.  More    : Boolean;
  21.  InfoFile:FILE OF Info;
  22.  A1,A2,
  23.  C1,C2   : WORD;
  24.  InfoRec : Info;
  25.  
  26. PROCEDURE BlankInfo;
  27. BEGIN
  28.  FillChar(InfoRec,SizeOf(InfoRec),0); InfoRec.Phone:='(   )    -    ';
  29. END;
  30.  
  31. PROCEDURE Init;
  32. {initialize 3 pages of ASG procs, assign & open data file, init vars}
  33. BEGIN
  34.  MakeASGHeapPage(1,7); {Page 1 has 7 fields t/b filled}
  35.  {set up ASG attributes}
  36.  OrgAttr:=7; SayAttr:=7; GetAttr:=113; EndAttr:=15;
  37.  WITH InfoRec DO
  38.  BEGIN
  39.   AddASGSL(1, 5,4,'First    ',@First,15);
  40.   AddASGCP(1, 5,5,'Initial  ',@Mid,'A');
  41.   AddASGSL(1, 5,6,'Last     ',@Last,15);
  42.   AddASGByte(1,47,6,'Age      ',@Age,2);
  43.   AddASGSL(1,47,7,'Address  ',@Address,20);
  44.   AddASGSL(1,47,8,'City     ',@City,20);
  45.   AddASGSP(1, 5,9,'Phone    ',@Phone,'(999) 999-9999');
  46.  END;
  47.  MakeASGHeapPage(2,4); {Page 2 has 4 fields t/b filled}
  48.  WITH InfoRec DO
  49.  BEGIN
  50.   AddASGSL(2, 5,6,'Name   ',@Name,25);
  51.   AddASGSL(2,47,6,'Address',@Address,20);
  52.   AddASGSL(2,47,8,'City   ',@City,20);
  53.   AddASGSP(2, 5,9,'Phone  ',@Phone,'(999) 999-9999');
  54.  END;
  55.  MakeASGHeapPage(3,3); {Page 3 has 3 fields t/b filled}
  56.  {set up new ASG attributes}
  57.  OrgAttr:=71; SayAttr:=71; GetAttr:=112; EndAttr:=79;
  58.  WITH InfoRec DO
  59.  BEGIN
  60.   AddASGW (3,2,2,'Years in business.......',@Years,2);
  61.   AddASGR (3,2,3,'Profit/Loss this year  $',@PorL,10,2);
  62.   AddASGI (3,2,4,'Gain/Loss of employees..',@GorL,4);
  63.  END;
  64.  TextAttr:=7; OrgAttr:=7; SayAttr:=7; GetAttr:=113;
  65.  AddInfo:=False; Cont:=True; More:=True; FillChar(CA,SizeOf(CA),0);
  66.  Assign(InfoFile,'READDEMO.DAT');
  67.  IF OnFile('READDEMO.DAT') THEN RESET(InfoFile) ELSE
  68.  BEGIN
  69.   REWRITE(InfoFile); AddInfo:=True;
  70.  END;
  71. END;
  72.